﻿/**
 * @brief 区分并读取".vtk"格式的数据
 * 目前可区分读取 vtkPolyData/vtkUnstructedGrid/vtkStructuredGrid类型
 */
#ifndef PST_MUTIVTUFILESREADER_H
#define PST_MUTIVTUFILESREADER_H
#include <QString>
#include <QList>
#include <vtkXMLUnstructuredGridReader.h>

namespace pst
{
    class MutiVTUFilesReader : public vtkXMLUnstructuredGridReader
    {
    public:
        vtkTypeMacro(MutiVTUFilesReader, vtkXMLUnstructuredGridReader);
        static MutiVTUFilesReader* New();

    public:
        void SetOtherList(const QList<MutiVTUFilesReader*>& otherList)
        {
            m_otherList = otherList;
        }

        QList<MutiVTUFilesReader*> GetOtherList() const
        {
            return m_otherList;
        }

        void SetGeometryFileName(const QStringList& geometryFileName)
        {
            m_geometryFileName = geometryFileName;
        }

        QStringList GetGeometryFileName() const
        {
            return m_geometryFileName;
        }

    protected:
        MutiVTUFilesReader();
        ~MutiVTUFilesReader();

    private:
        QList<MutiVTUFilesReader*> m_otherList;
        QStringList m_geometryFileName;
    };

} // namespace pst
#endif // PST_MUTIVTUFILESREADER_H
